package com.ruoyi.system.mapper;

import com.ruoyi.system.domain.Constructionsection;
import com.ruoyi.system.domain.Project;
import com.ruoyi.system.domain.Projects;
import com.ruoyi.system.domain.ProjectsTwo;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * 项目Mapper接口
 * 
 * @author ruoyi
 * @date 2020-12-16
 */
public interface ProjectsMapper 
{
    //查询项目详情
    public Projects selectProjectsById(Long pId);

    //查询项目列表
    public List<Projects> selectProjectsList(Projects projects);

    // 施工队列表
    public List<Constructionsection> selectconstructionsections();

    // 新增项目
    public int insertProjects(ProjectsTwo projects);

    // 查询同名项目
    public int selectpName(@Param("pNumber") String pNumber, @Param("pName") String pName);
    // 查询除自己以外的同名项目
    public int selectpNameByid(@Param("pNumber") String pNumber, @Param("pName") String pName,@Param("pId") String pId);

    // 查询项目内是否有材料
    public int selectProjectsMateial(Long wId);

    // 删除项目
    public int deleteProjectsById(Long pId);

    // 批量删除项目
    public int deleteProjectsByIds(long pIds);

    // 查询项目成本
    Double selectMoney(Long getpId);
    Double selectSum(Long getpId);

    // 新增施工班组
    public int addconstructionsection(@Param("pid") Long pId, @Param("ctid") long ctId);

    //    查询施工队存不存在
    //    public int selectteam(@Param("pid") Long pId, @Param("ctid") Long ctId);

    // 修改项目信息
    int updateProject(Project projects);

    // 根据项目id删除所有id
    int selectConstructionsectionIds(Long getpId);

    //插入班组id
    int insertConstructionsectionIds(@Param("ctid")Integer ctid, @Param("pid")Long getpId);

    //班组
    //    List<String> selectConstructionsection(Long getpId);

    //删除班组中间表
    int deleteConstructionsection(long ids);

    //根据项目名查项目Id
    Long selectIdByProName(HashMap<String,Object> map);

    //查询材料总量
    Double selectCountMatSum(Long getpId);
}
